package com.ev.k3cloud.entity;

import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;

@Data
public class K3CloudBillSaveBaseEntity implements Serializable {
    private static final long serialVersionUID = 1L;

    @JSONField(ordinal = 1,name="Creator")
    @ApiModelProperty(value = "创建者内码")

    private String creator = "";

    @JSONField(ordinal = 2,name="NeedUpDateFields")
    @ApiModelProperty(value = "需要更新的字段，数组类型，格式：[key1,key2,...] （非必录）注（更新单据体字段得加上单据体key）")

    private String[] needUpDateFields = new String[]{};

    @JSONField(ordinal = 3,name="NeedReturnFields")

    @ApiModelProperty(value = "需返回结果的字段集合，数组类型，格式：[key,entitykey.key,...]（非必录） 注（返回单据体字段格式：entitykey.key）")
    private String[] needReturnFields = new String[]{};

    @JSONField(ordinal = 4,name="IsDeleteEntry")
    @ApiModelProperty(value = "是否删除已存在的分录，布尔类型，默认true（非必录）")

    private Boolean isDeleteEntry = true;

    @JSONField(ordinal = 5,name="SubSystemId")
    @ApiModelProperty(value = "表单所在的子系统内码，字符串类型（非必录）")

    private String subSystemId = "";

    @JSONField(ordinal = 6,name="IsVerifyBaseDataField")
    @ApiModelProperty(value = "是否验证所有的基础资料有效性，布尔类，默认false（非必录）")

    private Boolean isVerifyBaseDataField = false;

    @JSONField(ordinal = 7,name="IsEntryBatchFill")
    @ApiModelProperty(value = "是否批量填充分录，默认true（非必录）")

    private Boolean isEntryBatchFill = true;

    @JSONField(ordinal = 8,name="ValidateFlag")
    @ApiModelProperty(value = "是否验证标志，布尔类型，默认true（非必录）")

    private Boolean validateFlag = true;

    @JSONField(ordinal = 9,name="NumberSearch")
    @ApiModelProperty(value = "是否用编码搜索基础资料，布尔类型，默认true（非必录）")

    private Boolean numberSearch = true;

    @JSONField(ordinal = 10,name="InterationFlags")
    @ApiModelProperty(value = "交互标志集合，字符串类型，分号分隔，格式：\"flag1;flag2;...\"（非必录） 例如（允许负库存标识：STK_InvCheckResult）")

    private String interationFlags = "";

    @JSONField(ordinal = 11,name="IsAutoSubmitAndAudit")
    @ApiModelProperty(value = "是否自动提交与审核，布尔类型，默认false（非必录） 注（启用此参数，保存，提交和审核是在一个事务中）")

    private Boolean isAutoSubmitAndAudit = false;

    @JSONField(ordinal = 12,name="Model")

    @ApiModelProperty(value = "表单数据包，JSON类型（必录）")
    private Object model;
}
